Application of Machine Learning Techniques to Predict Software Reliability
نویسندگان
چکیده
In this paper, the authors employed machine learning techniques, specifically, Back propagation trained neural network (BPNN), Group method of data handling (GMDH), Counter propagation neural network (CPNN), Dynamic evolving neuro–fuzzy inference system (DENFIS), Genetic Programming (GP), TreeNet, statistical multiple linear regression (MLR), and multivariate adaptive regression splines (MARS), to accurately forecast software reliability. Their effectiveness is demonstrated on three datasets taken from literature, where performance is compared in terms of normalized root mean square error (NRMSE) obtained in the test set. From rigorous experiments conducted, it was observed that GP outperformed all techniques in all datasets, with GMDH coming a close second. DOI: 10.4018/jaec.2010070104 International Journal of Applied Evolutionary Computation, 1(3), 70-86, July-September 2010 71 Copyright © 2010, IGI Global. Copying or distributing in print or electronic forms without written permission of IGI Global is prohibited. important factor which is related to defects and faults. It differs from hardware reliability in that it reflects the design perfection, rather than manufacturing perfection. The principal factors that affect software reliability are (i) fault introduction (ii) fault removal and (iii) the environment. Fault introduction depends primarily on the characteristics of the product and the development process. The characteristics of development process include software engineering technologies and tools used the level of experience of the personnel, volatility of requirements, and other factors. Failure discovery, in turn, depends on the extent to which the software has been executed and the operational profile. Because some of the foregoing factors are probabilistic in nature and operate over time, software reliability models have generally been formulated in terms of random processes in execution time. In the past few years much research work has been carried out in software reliability and forecasting but no single model could capture software characteristics. In this paper, we investigate the performance of some of the well known machine learning techniques in predicting software reliability. The rest of the paper is organized as follows. In Literature review section, a brief review of the works carried out in area of software reliability prediction is presented. In the next section, the various stand-alone machine learning techniques applied in this paper are briefly described. In the next section, the experimental design followed in this paper is presented. It is followed by a section that discusses the results obtained. Finally, the last section concludes the paper.
منابع مشابه
Application of ensemble learning techniques to model the atmospheric concentration of SO2
In view of pollution prediction modeling, the study adopts homogenous (random forest, bagging, and additive regression) and heterogeneous (voting) ensemble classifiers to predict the atmospheric concentration of Sulphur dioxide. For model validation, results were compared against widely known single base classifiers such as support vector machine, multilayer perceptron, linear regression and re...
متن کاملMachine Learning and Citizen Science: Opportunities and Challenges of Human-Computer Interaction
Background and Aim: In processing large data, scientists have to perform the tedious task of analyzing hefty bulk of data. Machine learning techniques are a potential solution to this problem. In citizen science, human and artificial intelligence may be unified to facilitate this effort. Considering the ambiguities in machine performance and management of user-generated data, this paper aims to...
متن کاملA Hybrid Machine Learning Method for Intrusion Detection
Data security is an important area of concern for every computer system owner. An intrusion detection system is a device or software application that monitors a network or systems for malicious activity or policy violations. Already various techniques of artificial intelligence have been used for intrusion detection. The main challenge in this area is the running speed of the available implemen...
متن کاملBridging the semantic gap for software effort estimation by hierarchical feature selection techniques
Software project management is one of the significant activates in the software development process. Software Development Effort Estimation (SDEE) is a challenging task in the software project management. SDEE is an old activity in computer industry from 1940s and has been reviewed several times. A SDEE model is appropriate if it provides the accuracy and confidence simultaneously before softwa...
متن کاملGenetic Algorithms for Optimizing Ensemble of Models in Software Reliability Prediction
Software reliability models are very useful to estimate the probability of the software fail along the time. Several different models have been proposed to predict the software reliability growth (SRGM); however, none of them has proven to perform well considering different project characteristics. The ability to predict the number of faults in the software during development and testing proces...
متن کاملApplication of the Extreme Learning Machine for Modeling the Bead Geometry in Gas Metal Arc Welding Process
Rapid prototyping (RP) methods are used for production easily and quickly of a scale model of a physical part or assembly. Gas metal arc welding (GMAW) is a widespread process used for rapid prototyping of metallic parts. In this process, in order to obtain a desired welding geometry, it is very important to predict the weld bead geometry based on the input process parameters, which are voltage...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- IJAEC
دوره 1 شماره
صفحات -
تاریخ انتشار 2010